package com.adisi.objetos;

import java.math.BigDecimal;
import java.util.ArrayList;
import java.util.Date;

public class Viaje {
	
	private int idViaje;
	private Jornada jornada;				//>> Contiene al auto y al chofer
	
	private Cliente cliente;
	
	private Domicilio origen;
	private Domicilio destino;
	
	private BigDecimal costo;
	private BigDecimal comision;
	
	private Date fechaHoraInicio;
	
	private Date fechaHoraFin;
	
	private EstadoViaje estado;
	
	private ArrayList<PuntoRuta> puntos;
		
	
	public Viaje(Jornada jornada, Cliente cliente, Domicilio origen, Domicilio destino, Date inicio)
	{
		super();
		
		idViaje = 0;
		this.jornada = jornada;
		this.cliente = cliente;
		this.origen = origen;
		this.destino = destino;
		this.fechaHoraInicio = inicio;
		this.fechaHoraFin = null;
		this.estado = EstadoViaje.NEUTRO ;
		
	}

	public Viaje(int idViaje, Jornada jornada, Cliente cliente, Domicilio origen, Domicilio destino, Date inicio, Date fin, EstadoViaje estado)
	{
		super();
		
		this.idViaje = idViaje;
		this.jornada = jornada;
		this.cliente = cliente;
		this.origen = origen;
		this.destino = destino;
		this.fechaHoraInicio = inicio;
		this.fechaHoraFin = fin;
		this.estado = estado;
		
	}
	
	public int getIdViaje() {
		return idViaje;
	}

	public void setIdViaje(int idViaje) {
		this.idViaje = idViaje;
	}

	public Jornada getJornada() {
		return jornada;
	}

	public void setJornada(Jornada jornada) {
		this.jornada = jornada;
	}

	public Domicilio getOrigen() {
		return origen;
	}

	public void setOrigen(Domicilio origen) {
		this.origen = origen;
	}

	public Domicilio getDestino() {
		return destino;
	}

	public void setDestino(Domicilio destino) {
		this.destino = destino;
	}

	public BigDecimal getCosto() {
		return costo;
	}

	public void setComision(BigDecimal comision) {
		this.comision = comision;
	}

	public BigDecimal getComision() {
		return comision;
	}

	public void setCosto(BigDecimal costo) {
		this.costo = costo;
	}

	public Date getFechaHoraInicio() {
		return fechaHoraInicio;
	}

	public void setFechaHoraInicio(Date fechaHoraInicio) {
		this.fechaHoraInicio = fechaHoraInicio;
	}

	public Date getFechaHoraFin() {
		return fechaHoraFin;
	}

	public void setFechaHoraFin(Date fechaHoraFin) {
		this.fechaHoraFin = fechaHoraFin;
	}

	public EstadoViaje getEstado() {
		return estado;
	}

	public void setEstado(EstadoViaje estado) {
		this.estado = estado;
	}


	public Cliente getCliente() {
		return cliente;
	}

	public void setCliente(Cliente cliente) {
		this.cliente = cliente;
	}

	public ArrayList<PuntoRuta> getPuntos() {
		return puntos;
	}

	public void setPuntos(ArrayList<PuntoRuta> puntos) {
		this.puntos = puntos;
	}

	
}
